// 封装对文章列表的接口方法封装
import ajax from '@/utils/request.js'
/**
 * 获取指定频道下的数据
 * query传参 params
 * @param {*} channelID 频道ID
 * @param {*} timestamp 时间戳整数 单位毫秒 时间戳，请求新的推荐数据传当前的时间戳，请求历史推荐传指定的时间戳分页。
 * @param {*} with_top  0或1 是否包含置顶，进入页面第一次请求时要包含置顶文章，1-包含置顶，0-不包含
 */
export const getArticles = (channelID, timestamp) => {
  return ajax({
    method: 'GET',
    url: '/app/v1_1/articles',
    params: {
      channel_id: channelID,
      timestamp,
      with_top: 1
    }
  })
}
/**
 * 用户不感兴趣某个文章
 * @param {*} articleID 文章编号
 */
export const disLike = articleID => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/article/dislikes',
    data: {
      target: articleID
    }
  })
}
/**
 * 用户拉黑作者
 * @param {*} userID 文章编号
 */
export const disLikeAuthor = userID => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/user/blacklists',
    data: {
      target: userID
    }
  })
}
/**
 * 举报文章
 * @param {*} articleID  举报的文章id
 * @param {*} typeID 举报类型
 * 0-其他问题，1-标题夸张，2-低俗色情，3-错别字多，4-旧闻重复，5-广告软文，6-内容不实，7-涉嫌违法犯罪，8-侵权'
 */
export const report = (articleID, typeID) => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/article/reports',
    data: {
      target: articleID,
      type: typeID
    }
  })
}
/**
 * 根据文章编号来获取文章详情
 * @param {*} id 文章编号
 */
export const getArticle = id => {
  return ajax({
    method: 'GET',
    url: '/app/v1_0/articles/' + id
  })
}
/**
 * 关注用户
 * @param {*} userId 用户的id
 */
export const followUser = userId => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/user/followings',
    data: {
      target: userId
    }
  })
}

/**
 * 取消关注用户
 * @param {*} userId 用户的id
 */
export const unFollowUser = userId => {
  return ajax({
    method: 'DELETE',
    url: '/app/v1_0/user/followings/' + userId
  })
}
/**
 * 取消点赞
 * @param {*} id 文章编号
 */
export const deleteLike = id => {
  return ajax({
    method: 'DELETE',
    url: '/app/v1_0/article/likings/' + id
  })
}

/**
 * 添加点赞
 * @param {*} id 文章编号
 */
export const addLike = id => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/article/likings',
    data: {
      target: id
    }
  })
}
/**
 * 取消不喜欢
 * @param {*} id 文章编号
 */
export const deleteDisLike = id => {
  return ajax({
    method: 'DELETE',
    url: '/app/v1_0/article/dislikes/' + id
  })
}
/**
 * 添加不喜欢
 * @param {*} id 文章编号
 */
export const addDisLike = id => {
  return ajax({
    method: 'POST',
    url: '/app/v1_0/article/dislikes',
    data: {
      target: id
    }
  })
}
